Fast signal surveyor

ABSTRACT

A system and method for characterizing a received radio frequency (RF) signal. In one embodiment, the system includes an antenna, a tuner, a sampler, a memory, and a processing unit connected to the memory, the processing unit being configured to receive a first sequence of samples from the sampler, perform a fast Fourier transform (FFT) operation, take the absolute value of a shifted complex frequency spectrum, perform a first filtering operation, perform a logarithmic operation, and perform an edge detection process to form an array of carrier centers and an array of carrier bandwidths. The processing unit is further configured to form, for each energy band identified as a result of the edge detection process, estimates of carrier characteristics and estimates of modulation characteristics.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is related to U.S. Pat. No. 8,594,602, entitled“FAST CROSS-POLE CORRECTOR” (the “'602 patent”), the entire content ofwhich is incorporated herein by reference.

BACKGROUND

1. Field

One or more aspects of embodiments according to the present inventionrelate to surveying of transmitted radio frequency (RF) signals, andmore particularly to a system and method for efficiently surveying andanalyzing such RF signals.

2. Description of Related Art

Radio frequency (RF) signals, e.g., RF signals modulated to transmitdigital data, are emitted by various sources for communicationspurposes, and it may be useful to identify individual transmitters, andto determine the carrier frequency, the modulation type, and modulationrate. It may also be useful to reconstruct the digital data beingtransmitted. In military applications, for example, this may be usefulfor identifying and analyzing the communications of other parties. Incommercial applications, it may be useful, for example, for identifyingsources of interference.

When a receiver is on an airborne platform, the received RF signal maychange rapidly as the aircraft flies over various transmitters. In sucha situation, a slow system for analyzing the RF signal may beineffective.

Thus, there is a need for a fast system for surveying and analyzingtransmitted RF signals.

SUMMARY

Aspects of embodiments of the present disclosure are directed toward asystem and method for characterizing a received radio frequency (RF)signal. In one embodiment, the system includes an antenna, a tuner, asampler, a memory, and a processing unit connected to the memory, theprocessing unit being configured to receive a first sequence of samplesfrom the sampler, perform a fast Fourier transform (FFT) operation, takethe absolute value of a shifted complex frequency spectrum, perform afirst filtering operation, perform a logarithmic operation, and performan edge detection process to form an array of carrier centers and anarray of carrier bandwidths. The processing unit is further configuredto form, for each energy band identified as a result of the edgedetection process, estimates of carrier characteristics and estimates ofmodulation characteristics.

According to an embodiment of the present invention, there is provided asystem for analyzing radio frequency signals, the system including: anantenna; a tuner; a sampler; a memory; and a processing unit connectedto the memory, the processing unit being configured to: receive a firstsequence of samples from the sampler for a first polarization state;perform a first fast Fourier transform (FFT) operation on the samples ofthe first sequence of samples and an FFT shift on a result of the firstFFT operation to form a shifted complex frequency spectrum for the firstpolarization state; take the absolute value of the shifted complexfrequency spectrum to form a shifted magnitude spectrum; perform a firstfiltering operation on the shifted magnitude spectrum to form adecimated and filtered magnitude spectrum; perform a logarithmicoperation on the decimated and filtered magnitude spectrum to form a logfiltered magnitude spectrum; perform an edge detection process to forman array of carrier centers and an array of carrier bandwidths; and fora first carrier center of the array of carrier centers and acorresponding first carrier bandwidth: perform an inverse FFT (IFFT)operation on a subarray of the shifted complex frequency spectrum toform a decimated complex time series for the first carrier, the subarraycorresponding to a first range of frequencies, the first range offrequencies being centered on the first carrier, and having a frequencyextent substantially equal to the first carrier bandwidth; and store thedecimated complex time series in the memory.

In one embodiment, the processing unit is further configured to: receivea second sequence of samples from the sampler for a second polarizationstate; perform a second FFT operation on the second sequence of samplesand an FFT shift on a result of the second FFT operation to form ashifted complex frequency spectrum for the second polarization state;and perform a fast cross-pole correction with the shifted complexfrequency spectrum for the first polarization state and the shiftedcomplex frequency spectrum for the second polarization state.

In one embodiment, the performing of a first filtering operationincludes: performing an FFT operation on the shifted magnitude spectrumto form a spectrum of the shifted magnitude spectrum, selecting acontiguous subset of data points from the shifted magnitude spectrum,multiplying the subset by a windowing function to form windowed data;performing an inverse FFT (IFFT) operation on the windowed data to forma decimated and filtered complex spectrum.

In one embodiment, the windowing function is a Kaiser windowingfunction.

In one embodiment, the performing of a first filtering operation furtherincludes: taking the absolute value of the decimated and filteredcomplex spectrum to form a decimated and filtered magnitude spectrum.

In one embodiment, the performing of a first filtering operation furtherincludes taking the logarithm of the decimated and filtered magnitudespectrum and multiplying the logarithm by 20.

In one embodiment, the performing of the edge detection process includesscanning the log filtered magnitude spectrum in an ascending directionto identify a set of ascending rising edges and a set of ascendingfalling edges.

In one embodiment, the performing of the edge detection process furtherincludes scanning the log filtered magnitude spectrum in a descendingdirection to identify a set of descending rising edges and a set ofdescending falling edges.

In one embodiment, the performing of the edge detection process furtherincludes forming an expanded set of rising and falling edges bysubstituting, for each ascending falling edge in the set of ascendingfalling edges, a corresponding descending rising edge.

In one embodiment, the processing unit is further configured to form anormalized decimated complex time series, each element of the normalizeddecimated complex time series having unit magnitude and the same angleas a corresponding element of the decimated complex time series.

In one embodiment, the processing unit is further configured to raiseeach element of the normalized decimated complex time series to thepower N to form a raised normalized decimated complex time series, Nbeing a positive integer.

In one embodiment, N is selected from the group consisting of 2, 4, and8.

In one embodiment, the processing unit is further configured to form across spectrum of the raised normalized decimated complex time series.

In one embodiment, the processing unit is further configured to performcross spectrum analysis of the raised normalized decimated complex timeseries, to form a carrier frequency offset, a max/n3 for N, and amax/rms for N.

In one embodiment, the processing unit is further configured tocalculate the angle of each element of the decimated complex time seriesto form a series of angles of the decimated complex time series.

In one embodiment, the processing unit is further configured to form apolar discriminator of the series of angles of the decimated complextime series.

In one embodiment, the processing unit is further configured to performcross spectrum analysis of angles of the polar discriminator to form asymbol offset rate, a max/n3 for symbol rate, and a max/rms for symbolrate.

In one embodiment, the processing unit is further configured to form aprecision carrier frequency estimate, a precision symbol rate estimate,and a modulation identification.

BRIEF DESCRIPTION OF THE DRAWINGS

Features, aspects, and embodiments are described in conjunction with theattached drawings, in which:

FIG. 1 is a block diagram of a signal surveyor according to anembodiment of the present invention;

FIG. 2 is a block diagram of a fast signal surveyor according to anembodiment of the present invention;

FIG. 3 is a block diagram of a system for forming a decimated logfiltered magnitude spectrum and complex frequency spectrum according toan embodiment of the present invention;

FIG. 4 is a block diagram of a system for identifying energy bandsaccording to an embodiment of the present invention;

FIG. 5 is a block diagram of a system for extracting data correspondingto one energy band according to an embodiment of the present invention;

FIG. 6 is a block diagram of a system for forming preliminary estimatesof carrier characteristics according to an embodiment of the presentinvention;

FIG. 7 is a block diagram of a system for forming preliminary estimatesof symbol rate characteristics according to an embodiment of the presentinvention;

FIG. 8 is a block diagram of a system for forming final estimates ofcarrier, symbol rate, and modulation characteristics according to anembodiment of the present invention; and

FIG. 9 is a diagram of a user display showing survey results accordingto an embodiment of the present invention.

DETAILED DESCRIPTION

The detailed description set forth below in connection with the appendeddrawings is intended as a description of exemplary embodiments of a fastsignal surveyor provided in accordance with the present invention and isnot intended to represent the only forms in which the present inventionmay be constructed or utilized. The description sets forth the featuresof the present invention in connection with the illustrated embodiments.It is to be understood, however, that the same or equivalent functionsand structures may be accomplished by different embodiments that arealso intended to be encompassed within the spirit and scope of theinvention. As denoted elsewhere herein, like element numbers areintended to indicate like elements or features.

Referring to FIG. 1, in one embodiment, a signal surveyor 110 includesan antenna 115, a tuner 120, a sampler and a processing unitimplementing a fast signal surveyor 125. The sampler may include one ormore A/D converters 130 providing digital samples of the downconvertedsignal or signals from one or more polarization states received by theantenna. The samples may include in-phase and quadrature phase samples,which may be received, or interpreted, by the processing unit as complexnumbers.

Referring to FIG. 2, in one embodiment, a first sequence of samplescorresponding to vertically polarized received electromagnetic waves isprocessed by a first fast Fourier transform (FFT) module 202 and asecond sequence of samples corresponding to vertically polarizedreceived electromagnetic waves is processed by a second FFT module 204,and the two resulting FFTs are combined in a fast cross-pole corrector206, which separates the received signals into two data streams thatcorrespond to independently transmitted polarization states, of whichthe received horizontally polarized and vertically polarized signals arelinear combinations. Details of embodiments of the fast cross-polecorrector are provided in the '602 patent. In other embodiments, thefast cross-pole corrector may be absent and the FFTs corresponding tothe received horizontally polarized and vertically polarized signals maybe fed directly to the subsequent processing modules; in one embodiment,only one FFT is formed, from either the signal corresponding tovertically polarized received electromagnetic waves or the signalcorresponding to horizontally polarized received electromagnetic waves.

Subsequent processing then detects energy bands within the receivedsignal, and performs additional analysis within each energy band, toform estimates of carrier and modulation characteristics within theband. When several distinct energy bands are present in a receivedsignal, each such energy band may be the product of a transmitter, e.g.,on the ground, radiating a carrier modulated with a digital modulationsignal. The signal surveyor may then be used to separate the receivedsignal into components corresponding to distinct energy bands, and tocharacterize each corresponding transmission.

In one embodiment, a first FFT (from an FFT module, either directly orvia the fast cross-pole corrector) is processed by an energy band detectmodule 208 and also, for each energy band detected, by a first analysismodule 210, the first analysis module 210 including an inverse FFT(IFFT) tune and downsample module 212, a symbol rate ID (or symbol rateestimation) and carrier frequency ID (or carrier rate estimation) module214, and a resampling and modulation ID module 216. A second FFT, e.g.,corresponding to another polarization state, may be processed in thesame manner. The energy band detect module 208 may be used to identify anumber of energy bands and, for each band, estimate the carrier centerfrequency, the carrier bandwidth, the carrier power, and the noisefloor. Referring to FIGS. 3 and 4, this may be accomplished by severalcascaded modules. As used herein, a “module” is a system element thatreceives digital numerical input and generates digital numerical output.The numerical output may be stored in memory in a batch mode, in which,for example, an output array is formed and stored on a stack or in aheap for subsequent use or processing, or the numerical output may bestreamed out of the module in smaller increments, e.g., onedouble-precision number at a time, or one byte at a time. The module maybe implemented in software or in hardware or in a combination thereof.In one embodiment, each module is a piece of software (e.g., a function,a subroutine, or an object) running on a processing unit. In each case,the module has the effect of performing an operation on the data itreceives, to generate the data that it produces. Thus, for embodimentsdisclosed herein, the system including a module that performs anoperation is equivalent to the system being configured to perform theoperation. For example, an FFT module performs an FFT operation on theinput data that are fed to it, to form output data that are the FFT ofthe input data. The term “processing unit” is used herein to include anycombination of hardware, firmware, and software, employed to processdata or digital signals. Processing unit hardware may include, forexample, application specific integrated circuits (ASICs), generalpurpose or special purpose central processing units (CPUs), digitalsignal processors (DSPs), graphics processing units (GPUs), andprogrammable logic devices such as field programmable gate arrays(FPGAs). In a processing unit, as used herein, each function isperformed either by hardware configured, i.e., hard-wired, to performthat function, or by more general purpose hardware, such as a CPU,configured to execute instructions stored in a non-transitory storagemedium. A processing unit may be fabricated on a single printed wiringboard (PWB) or distributed over several interconnected PWB s. Aprocessing unit may contain other processing units; for example, aprocessing unit may include two processing units, an FPGA and a CPU,interconnected on a PWB.

Referring to FIG. 3, in one embodiment, an array of input time samplesis processed by a first FFT module 305 and a first FFT shift module 310to generate a shifted complex frequency spectrum. This shifted complexfrequency spectrum may be, for example, Rv(w), Rh(w), Rvc(w) or Rhc(w)in FIG. 2. The shifted complex frequency spectrum is then fed into theenergy band detect module, which begins with a first absolute valuemodule 315 in FIG. 3, which takes the magnitude of each element of theshifted complex frequency spectrum to form a shifted magnitude spectrum.The shifted magnitude spectrum is fed into a second FFT module 320 toform a spectrum of the shifted magnitude spectrum, the spectrum of theshifted magnitude spectrum is fed into a select module 325, whichselects a subset of n2 contiguous data points around DC from the shiftedmagnitude spectrum. The output of the select module is then fed into afirst multiplier 330. In the first multiplier, the output of the selectmodule is multiplied by a windowing function formed by feeding a Kaiserwindow 335 through a second FFT shift module 340. The output of themultiplier is fed into a first inverse FFT (IFFT) module 345 to form adecimated and filtered complex spectrum, and the decimated and filteredcomplex spectrum is fed into second absolute value module 350, whichtakes the magnitude of each element to form a decimated and filteredmagnitude spectrum. The decimated and filtered magnitude spectrum is fedinto a first logarithmic module 355 (which takes a logarithm to the base10 and multiplies by 20) to form a log filtered magnitude spectrum. Theeffect of this sequence of modules, beginning with the first absolutevalue module 315 and ending with the first logarithmic module 355, is toform a filtered (e.g., smoothed) spectrum of the time samples, which isthen represented in decibels (dB), the degree of smoothing beingdetermined by the shape and width (i.e., n2) of the Kaiser window 335.This filtering reduces the degree to which noise in the samples mayinfluence the results of subsequent processing steps performed on thelog filtered magnitude spectrum, and the value of n2 may be selected asa value that suppresses noise adequately without blurring the featuresof interest to an unacceptable degree.

Referring to FIG. 4, in subsequent processing, the log filteredmagnitude spectrum is analyzed to identify, and to characterize thefrequency extent of, energy bands in the signal. The log filteredmagnitude spectrum is first fed into an edge detection module thatestimates the upper and lower frequency boundaries of each energy band.The filtered magnitude spectrum is first scanned in an ascendingdirection, i.e., in the direction of increasing frequency. At eachfrequency point in the filtered magnitude spectrum, if the value of thefiltered magnitude spectrum exceeds a minimum value plus a firstthreshold value, the frequency point is labeled as a rising edge, andthe module switches to a state 410 in which it is searching for the nextfalling edge. When the value of the filtered magnitude spectrum nextfalls below a maximum value minus the first threshold value, thefrequency point is labeled as a falling edge, and the module switches toa state 415 in which it is searching for the next rising edge. Thisprocess continues until the highest frequency point in the filteredmagnitude spectrum is reached, and results in a set of ascending risingedges and ascending falling edges.

The process is then repeated in a descending direction, i.e., in thedirection of decreasing frequency, to find a set of descending risingedges and descending falling edges. Each descending rising edge may fallclose in frequency to a corresponding ascending falling edge, and eachdescending falling edge may fall close in frequency to a correspondingascending rising edge. The set of ascending rising edges and ascendingfalling edges is then combined, in a module 420 for combining outsideforward and reverse edge labels, to form an expanded set of rising andfalling edges, formed by substituting, for each ascending falling edgein the set of ascending rising edges and ascending falling edges, thecorresponding descending rising edge.

In a next step, a module 425 for finding the carrier center frequencies,the carrier bandwidths, the carrier power, and the noise power performsthis function for each energy band by calculating the average of eachrising edge in the expanded set of rising and falling edges and thefalling edge that is the next higher falling edge in frequency in theexpanded set of rising and falling edges, to find a carrier centerfrequency, and, by calculating the difference between this rising edgeand this falling edge, to find the bandwidth of the carrier.

The carrier power is then calculated by integrating, numerically, thepower in a frequency band centered on the carrier center frequency andhaving a bandwidth equal to the bandwidth of the carrier, and the noisefloor is estimated on each side of each carrier from the value of thelog filtered magnitude spectrum between carriers.

Referring to FIG. 5, in one embodiment, a set of modules thencalculates, for each energy band, the angle of the complex time seriesfor the selected carrier, i.e., the carrier in that energy band. Acarrier to noise ratio (CNR) level module 505 tests the carrier to noiseratio and compares it to a threshold and outputs the CNR and whether theCNR exceeds the threshold; this result may be used by subsequent modulesto provide an indication of the validity of, or a measure of confidencein, the results they generate. A module 510 for computing a length n3finds this length as the ratio of the carrier bandwidth for the currentfrequency band to the width of the frequency bins in the shifted complexfrequency spectrum, multiplied by a padding constant. The length n3, theshifted complex frequency spectrum (generated by the modules illustratedin FIG. 3), and the set of carrier center frequencies are fed into amodule 515 for selecting a set of points from the shifted complexfrequency spectrum forming a subarray of n3 points of the shiftedcomplex frequency spectrum centered on the carrier center frequency forthe current energy band. This subarray is multiplied, in a secondmultiplier 520, with a mask that sets to zero points on each end of thearray that fall outside of the energy band. Thus, the padding constantdetermines the number of zero-valued elements that are formed at eachend of the array as a result of multiplying by the mask. The arrayresulting from the multiplication is then processed by a second IFFTmodule 525, and shifted by a third FFT shift module 530 to form adecimated complex time series for the carrier of the current energyband. The angle (i.e., the argument of the complex value) of each pointin the decimated complex time series is then calculated by an anglemodule 535, to form an array of angles of the complex time series forthe selected carrier. This array is fed to two parallel sets of modules,one of which is illustrated in FIG. 6, and the other of which isillustrated in FIG. 7.

Referring to FIG. 6, in one embodiment, a set of modules processes thearray of angles of the complex time series for the selected carrier, foreach of the three integer values N=2, 4, and 8, each corresponding to adifferent nonlinearity. A module 605 for forming a power of Ncalculates, for each of the angle values in the array of angles of thecomplex time series, the value of exp(j N angle), i.e., a complex numberwith unit magnitude and having an argument that is N times the anglevalue. This operation is equivalent to normalizing each element of thedecimated complex time series (i.e., dividing each complex number by itsmagnitude) and raising each element of the normalized decimated complextime series to the power N. This module produces an array with n3elements, which is divided into two halves, the first half of which(having n3/2 elements) is fed into a third FFT module 610 and the otherhalf of which (also having n3/2 elements) is fed into a fourth FFTmodule 615. The complex conjugate of the output of the fourth FFT moduleis taken and the complex conjugate is multiplied by the output of thethird FFT module, to form a first complex cross spectrum.

The first complex cross spectrum is then processed in four data paths.In a first data path 625, the magnitude of the first complex crossspectrum is taken in a third absolute value module 620, to form themagnitude of the first cross spectrum. The frequency bin with themaximum value over a range of frequency bins extending n3/(2N) elementsfrom the central (DC) bin is selected. In a second data path 630, theangle of the first complex cross spectrum at the selected frequency binis divided by 2π and added to the number of the selected frequency bin,and multiplied by 2/n3, to form carrier frequency offsets for N=2, 4, 8,which may be referred to as cfo(2), cfo(4), and cfo(8), respectively,or, more generally, as cfo(N). In the third data path 635 of the fourdata paths, the element of the first complex cross spectrum at theselected frequency bin, which is the max value of the first complexcross spectrum, is divided by n3 to form a quantity referred to as“max/n3 for N=2, 4, 8”, and in the fourth data path 640 of the four datapaths, the max value of the first complex cross spectrum is divided bythe root mean square (rms) of the first complex cross spectrum to form aquantity referred to as the “maxlrms for N=2, 4, 8”. These quantitiesare preliminary estimates, in the sense that their significance dependson the modulation type, as discussed in further detail below. Forexample, the carrier frequency offset for N=2 may become the precisioncarrier frequency estimate if the modulation type is subsequentlydetermined to be BPSK.

Referring to FIG. 7, the array of angles of the complex time series forthe selected carrier is also processed by a set of modules for formingpreliminary estimates of modulation characteristics. Differences betweenconsecutive values of the angle are taken in a difference module 705,and the differences are converted to complex numbers (each having unitmagnitude and an argument equal to the difference in angles). The arrayof differences is fed to a polar to rectangular module 710 that convertseach complex number into rectangular form to form a polar discriminator.As used herein, the formation of a “polar discriminator” from an arrayof real numbers (which may represent angles of an array of complexnumbers) entails subtracting consecutive values in the array to form adifference array (shorter than the original array by 1), and forming anarray of complex numbers, each element of which contains, in rectangularform, a complex number having unit magnitude and an angle equal to acorresponding element of the difference array. The mean of the resultingarray of complex numbers is subtracted in a DC removal module 712, andthe output of the DC removal module 712 is fed to a fifth FFT module 714and to a sixth FFT module 716. The output of the sixth FFT module 716 isfed to a second complex conjugate module 718 and the output of the fifthFFT module 714 is multiplied by the output of the complex conjugatemodule 718 to form a second complex cross spectrum.

The second cross spectrum is processed in the same manner as that usedfor the first complex cross spectrum. That is, the second cross spectrumis processed in four parallel data paths. In a first data path 725, themagnitude of the second complex cross spectrum is taken in a fourthabsolute value module 720, to form the magnitude of the second crossspectrum. The frequency bin with the maximum value over a range offrequency bins extending n3/(2N) elements from the central (DC) bin isselected. In a second data path 730, the angle of the second complexcross spectrum at the selected frequency bin is divided by 2π and addedto the number of the selected frequency bin, and multiplied by 2/n3, toform the symbol offset rate. In a third data path 735 of the four datapaths, the element of the second complex cross spectrum at the selectedfrequency bin, which is the max value of the second complex crossspectrum, is divided by n3, to form a quantity referred to as “max/n3for symbol rate”, and in a fourth data path 740 of the four data paths,the max value of the second complex cross spectrum is divided by theroot mean square (rms) of the second complex cross spectrum to form aquantity referred to as the “max/rms for symbol rate”. As used here,forming a “cross spectrum” from an array of numbers refers to taking anFFT of the first half of the array, and taking an FFT of the second halfof the array, and multiplying one of these FFTs by the complex conjugateof the other, as shown in FIGS. 6 and 7. The set of modules 650 of FIG.6, duplicated in FIG. 7 (as the set of modules 750), that receives acomplex cross spectrum and generates either (in FIG. 6) carrierfrequency offsets for N=2, 4, 8, (i.e., cfo(2), cfo(4), and cfo(8)),max/n3 for N=2, 4, 8, and max/rms for N=2, 4, 8, or (in FIG. 7) a symboloffset rate, max/n3 for symbol rate, and max/rms for symbol rate forms acompound module (i.e., a module containing other modules) referred toherein as a complex cross spectrum analysis module, which performs crossspectrum analysis.

After the output of three iterations (for N=2, 4, 8) of the set ofmodules in FIG. 6, and one iteration (forming and processing the polardiscriminator) of the set of modules of FIG. 7, additional operationsmay be performed as illustrated in FIG. 8. In one embodiment, thequantities max/n3 for N=2, 4, 8; max/rms for N=2, 4, 8; max/n3 forsymbol rate; and max/rms for symbol rate are fed into a secondlogarithmic module 802, a third logarithmic module 804, a fourthlogarithmic module 806, and a fifth logarithmic module 808, and theoutputs of these logarithmic modules are fed into a modulationrecognition module 810 which may be a support vector machine or afactorization machine, which receives trained coefficients andidentifies the modulation type, e.g., as one of binary phase-shiftkeying (BPSK), quadrature phase-shift keying (QPSK), eight-phasephase-shift keying (8PSK), offset quadrature phase-shift keying (OQPSK),or quadrature amplitude modulation (QAM). This identification, or“modID”, is produced as an output of the fast signal surveyor, and isalso fed into a precision estimation module. The precision estimationmodule 820 receives the three carrier frequency offsets cfo(N) for N=2,4, 8, the symbol rate offset and the modulation ID. The precisionestimation module selects cfo(2) as the precision carrier frequency ifthe modID is BPSK, it selects cfo(4) as the precision carrier frequencyif the modID is QPSK, it selects cfo(8) as the precision carrierfrequency if the modID is 8PSK, and it selects cfo(4) as the precisioncarrier frequency otherwise. The precision estimation module calculatescfo(2)-cfo(4) as the precision symbol rate if the modID is OQPSK, and itselects the symbol rate offset (sro) as the precision symbol rateotherwise.

Once the precision symbol rate and the precision carrier frequency areknown, the resampling and modulation ID module 216 (FIG. 2) may performa precision resampling process, and output the time domain stream to arecognizable eye pattern, and make symbol decisions.

Referring to FIG. 9, in one embodiment, a user display includes agraphical spectrum display showing the magnitude spectrum of a receivedsignal, with several energy bands identified and each labelled with anumber. The user display also includes a tabular display showing a listof the energy bands, and, for each, a precise estimate of the carrierfrequency, the carrier power, the bandwidth of the carrier, a preciseestimate of the symbol rate, and the modID.

It will be understood that, although the terms “first”, “second”,“third”, etc., may be used herein to describe various elements,components, regions, layers and/or sections, these elements, components,regions, layers and/or sections should not be limited by these terms.These terms are only used to distinguish one element, component, region,layer or section from another element, component, region, layer orsection. Thus, a first element, component, region, layer or sectiondiscussed below could be termed a second element, component, region,layer or section, without departing from the spirit and scope of theinventive concept.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the inventiveconcept. As used herein, the terms “substantially”, “about”, and similarterms are used as terms of approximation and not as terms of degree, andare intended to account for the inherent deviations in measured orcalculated values that would be recognized by those of ordinary skill inthe art. As used herein, the term “major component” means a componentconstituting at least half, by weight, of a composition, and the term“major portion”, when applied to a plurality of items, means at leasthalf of the items.

As used herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising”, when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof. As used herein, the term “and/or”includes any and all combinations of one or more of the associatedlisted items. Expressions such as “at least one of”, when preceding alist of elements, modify the entire list of elements and do not modifythe individual elements of the list. Further, the use of “may” whendescribing embodiments of the inventive concept refers to “one or moreembodiments of the present invention”. Also, the term “exemplary” isintended to refer to an example or illustration.

It will be understood that when an element or layer is referred to asbeing “on”, “connected to”, “coupled to”, or “adjacent to” anotherelement or layer, it may be directly on, connected to, coupled to, oradjacent to the other element or layer, or one or more interveningelements or layers may be present. In contrast, when an element or layeris referred to as being “directly on”, “directly connected to”,“directly coupled to”, or “immediately adjacent to” another element orlayer, there are no intervening elements or layers present.

Although limited embodiments of a fast signal surveyor have beenspecifically described and illustrated herein, many modifications andvariations will be apparent to those skilled in the art. Accordingly, itis to be understood that a fast signal surveyor employed according toprinciples of this invention may be embodied other than as specificallydescribed herein. The invention is also defined in the following claims,and equivalents thereof.

What is claimed is:
 1. A system for analyzing radio frequency signals,the system comprising: an antenna; a tuner; a sampler; a memory; and aprocessing unit connected to the memory, the processing unit beingconfigured to: receive a first sequence of samples from the sampler fora first polarization state; perform a first fast Fourier transform (FFT)operation on the samples of the first sequence of samples and an FFTshift on a result of the first FFT operation to form a shifted complexfrequency spectrum for the first polarization state; take the absolutevalue of the shifted complex frequency spectrum to form a shiftedmagnitude spectrum; perform a first filtering operation on the shiftedmagnitude spectrum to form a decimated and filtered magnitude spectrum;perform a logarithmic operation on the decimated and filtered magnitudespectrum to form a log filtered magnitude spectrum; perform an edgedetection process to form an array of carrier centers and an array ofcarrier bandwidths; and for a first carrier center of the array ofcarrier centers and a corresponding first carrier bandwidth: perform aninverse FFT (IFFT) operation on a subarray of the shifted complexfrequency spectrum to form a decimated complex time series for the firstcarrier, the subarray corresponding to a first range of frequencies, thefirst range of frequencies being centered on the first carrier, andhaving a frequency extent substantially equal to the first carrierbandwidth; and store the decimated complex time series in the memory. 2.The system of claim 1, wherein the processing unit is further configuredto: receive a second sequence of samples from the sampler for a secondpolarization state; perform a second FFT operation on the secondsequence of samples and an FFT shift on a result of the second FFToperation to form a shifted complex frequency spectrum for the secondpolarization state; and perform a fast cross-pole correction with theshifted complex frequency spectrum for the first polarization state andthe shifted complex frequency spectrum for the second polarizationstate.
 3. The system of claim 1, wherein the performing of a firstfiltering operation comprises: performing an FFT operation on theshifted magnitude spectrum to form a spectrum of the shifted magnitudespectrum; selecting a contiguous subset of data points from the shiftedmagnitude spectrum; multiplying the subset by a windowing function toform windowed data; and performing an inverse FFT (IFFT) operation onthe windowed data to form a decimated and filtered complex spectrum. 4.The system of claim 3, wherein the windowing function is a Kaiserwindowing function.
 5. The system of claim 3, wherein the performing ofa first filtering operation further comprises: taking the absolute valueof the decimated and filtered complex spectrum to form a decimated andfiltered magnitude spectrum.
 6. The system of claim 5, wherein theperforming of a first filtering operation further comprises taking thelogarithm of the decimated and filtered magnitude spectrum andmultiplying the logarithm by
 20. 7. The system of claim 1, wherein theperforming of the edge detection process comprises scanning the logfiltered magnitude spectrum in an ascending direction to identify a setof ascending rising edges and a set of ascending falling edges.
 8. Thesystem of claim 7, wherein the performing of the edge detection processfurther comprises scanning the log filtered magnitude spectrum in adescending direction to identify a set of descending rising edges and aset of descending falling edges.
 9. The system of claim 8, wherein theperforming of the edge detection process further comprises forming anexpanded set of rising and falling edges by substituting, for eachascending falling edge in the set of ascending falling edges, acorresponding descending rising edge.
 10. The system of claim 1, whereinthe processing unit is further configured to form a normalized decimatedcomplex time series, each element of the normalized decimated complextime series having unit magnitude and the same angle as a correspondingelement of the decimated complex time series.
 11. The system of claim10, wherein the processing unit is further configured to raise eachelement of the normalized decimated complex time series to the power Nto form a raised normalized decimated complex time series, N being apositive integer.
 12. The system of claim 11, wherein N is selected fromthe group consisting of 2, 4, and
 8. 13. The system of claim 11, whereinthe processing unit is further configured to form a cross spectrum ofthe raised normalized decimated complex time series.
 14. The system ofclaim 13, wherein the processing unit is further configured to performcross spectrum analysis of the raised normalized decimated complex timeseries, to form a carrier frequency offset, a max/n3 for N, and amax/rms for N.
 15. The system of claim 14, wherein the processing unitis further configured to calculate the angle of each element of thedecimated complex time series to form a series of angles of thedecimated complex time series.
 16. The system of claim 15, wherein theprocessing unit is further configured to form a polar discriminator ofthe series of angles of the decimated complex time series.
 17. Thesystem of claim 16, wherein the processing unit is further configured toperform cross spectrum analysis of angles of the polar discriminator toform a symbol offset rate, a max/n3 for symbol rate, and a max/rms forsymbol rate.
 18. The system of claim 17, wherein the processing unit isfurther configured to form a precision carrier frequency estimate, aprecision symbol rate estimate, and a modulation identification.